TSlab — удобный инструмент для тестирования различных
относительно простых стратегий. Но у него есть недостаток
— нельзя организовать обратную связь.
Например, если необходимо данные по текущей позиции
передать в «начало» алгоритма, но, естественно, на следующую
итерацию.
Выход я в итоге нашёл, хотя и довольно медленный,
и вряд ли он сгодится для использования real-time,
но при историческом тестировании алгоритма вполне сносный.
Реализуем следующим образом.
Изначально вносим в алгоритм 2 или более (по-необходимости)
одинаковых источника данных. Одинаковых по сути, но имена
у текстовых файлов разные.
Один источник делаем тестовым: с него снимаем текущую позицию,
её доходность и пр. Для минимизации влияния на общую
статистику в этом источнике открываем позиции лишь в 1 лот.
Тогда TSlab позволит нам выходы из алгоритма обработки этого
источника подать на входы «рабочего» источник данных,
где позиции ставим не менее 1000 лотов для нивелирования
влияния «тестового» источника данных на статистику.
Конструкция получается довольно громоздкая, но проблема
реализации обратной связи решается.